草庐IT

ML 方法

全部标签

windows - 由于操作系统版本之间的 GetDetailsOf 列编号发生变化,是否有正确的方法在 Windows 中获取文件详细信息?

我们一直在使用Shell32Folder.GetDetailsOf(folderItem,column)获取不同文件的文件详细信息和扩展文件详细信息。不幸的是,这在操作系统版本之间中断,因为列编号发生变化,从thiscodeexample(norelationtoourproject)可以看出.我似乎无法找到获取扩展文件详细信息的正确方法,这些详细信息不会轻易破坏,也无法(非hackily)找出正确的列编号。那么问题来了,这是如何以正确的方式完成的?(编辑:更具体地说,我们读出的信息是音频、视频和图像信息,例如大小、fps、比特率等。) 最佳答案

c++ - 这是将一个类的私有(private) HWND 分配给另一个类的正确方法吗?

我有一个Game类,在某个时候它的私有(private)HWND成员m_hWnd会获得一个值:m_hWnd=CreateWindowEx(NULL,"WindowClass","Game",//ReplacewithgameNameWS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInst,this);稍后,创建一个D2DResources对象,其中必须传递游戏的m_hWnd。voidGame::CreateRessources(HINSTANCEhInst){C

windows - Windows API 中是否有一种方法可以在特定应用程序运行时触发代码?

我想监控在Windows中运行的应用程序的状态。我可以使用什么最佳方法(Win32或更新的API)来监视特定应用程序何时运行并在之后执行我选择的另一个应用程序? 最佳答案 您可以使用WMI-请参阅此SO问答Howtomonitorprocess/programexecutioninwindows?.特别是Win32_ProcessStartTraceclass该线程中还有一些其他选项。 关于windows-WindowsAPI中是否有一种方法可以在特定应用程序运行时触发代码?,我们在St

c++ - 如何在C++中同步getter和setter方法

如果同一类中有2个以下方法。boolCSettings::GetDelayTimer(){returnm_iTimerDelay;}voidCSettings::SetDelayTimer(intiTimerdelay){m_iTimerDelay=iTimerdelay;}为了同步上述方法,我创建了以下锁定/解锁方法。voidCSettings::Lock(){DWORDdwRet=WaitForSingleObject(m_hSettingsLock,INFINITE);if(dwRet==WAIT_OBJECT_0)return;}voidCSettings::UnLock(){

python - 编写程序/脚本以从一堆文件名的开头删除相同的字符串的最简单方法是什么?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求提供代码的问题必须表现出对所解决问题的最低限度理解。包括尝试过的解决方案、为什么它们不起作用,以及预期结果。另请参阅:StackOverflowquestionchecklist关闭9年前。Improvethisquestion我有一堆mp3,它们都有一个很长的标题,后面跟着“第3部分”或“第4部分”等。所以它就像“aasasdfjklakjsdf-part3”和“aasasdfjklakjsdf-part4”和“aasasdfjklakjsdf-第5部分”等等。我有超过100个,我想简单地从每个

c# - 模仿 Windows 默认文件重命名行为的 .Net 方法

在Windows资源管理器中,如果您复制一个文件并且文件名已经存在并且您选择不覆盖该文件,Windows资源管理器将使用特定的文件重命名算法,即它会尝试附加类似“复制”的内容,如果此文件存在时,它会在括号中附加一个数字,然后递增,以防这些文件名也已被占用。请注意,这是该算法的简化版本。实际上它更复杂。由于我不想对这种行为进行逆向工程,是否有可用的c#.Net-Api可以让我在复制或创建文件时直接访问这种行为? 最佳答案 没有。要点主要是这绝对不是Windows标准行为,而是仅在资源管理器中完成(即是这个特定程序执行此操作)。

c# - 检查窗口是否真正关闭的更好方法

我想知道是否有比以下方法更好的方法来检查窗口是否关闭,或者Closing是否取消了关闭过程?我们按我的方式走:varwindow=Application.Current.Windows.FirstOrDefault(x=>xisFooWindow);if(window!=null){vargotClosed=false;window.Closed+=(sender,args)=>gotClosed=true;window.Close();if(gotClosed==false){//Closegotcancled,byclosing...}} 最佳答案

c - Win32 - 在创建窗口之前拦截窗口的更好方法

我正在尝试自动化外部Windows应用程序。目标是在不显示任何事件窗口/启动画面且不从其他应用程序窃取焦点的情况下使此应用程序最小化启动。我用C编写了一个小程序,它在循环中调用EnumWindows()并使用ShowWindow()来最小化所需的窗口。它非常快,在80%的情况下都有效。不幸的是,有时应用程序窗口仍在显示并在短时间内窃取焦点。拦截窗口的更好(确定)方法是什么?使用SetWindowsHookExHook是唯一的选择吗? 最佳答案 您是否尝试过使用STARTUPINFOstructure的wShowWindow成员?你传

windows - 有什么方法可以将 token 设为 "seal",这样子进程就无法继承它了吗?

我正在尝试找到一种方法,允许单个进程作为高级用户启动,但禁止此进程使用它的token启动任何子进程——在某种程度上,有点“密封”token。这背后的原因是为了防止用户启动cmd.exe并获得对系统的完全访问权限。我查看了进程权限常量,但没有看到任何可用于实现此功能的内容。 最佳答案 我不认为你可以密封token,但你可以使用作业对象控制子进程的创建:staticBOOLSpawnProcessAndTerminateGrandchildren(PTSTRCmdline){HANDLEhJob=CreateJobObject(0,0)

c++ - 如何使用 PlaySound() 或任何基本函数/方法同时在 C++ 中播放超过 1 个 .wav 声音?

我正在尝试制作一个游戏,我需要同时播放许多声音我知道v.basic或者更确切地说只知道func。PlaySound()运行.wav声音。问题是使用SND_ASYNC我不能同时播放多个声音,但首先播放的声音会在中间跳过并播放下一个声音。有什么方法(简单易懂)可以同时播放多个声音吗? 最佳答案 Playsound不适用于混合声音。从本质上讲,它是一种较旧的技术,很容易被更新的技术超越。您可以使用DirectX用于游戏的声音开发(一个流行的选择)。我个人使用FMod因为它真的很容易使用。Hereisatutorialtogetyousta